package jia.core;

import jia.core.state.PlayerState;
import jia.core.characters.GameCharacter;

/**
 * @author Kintar
 */
public interface GameStateManager {
    /**
     * @param ep
     */
    public void registerEventProcessor(EventProcessor ep);

    /**
     * @param ui
     */
    public void registerUiManager(UiManager ui);

    /**
     * @return
     */
    public UiManager getUiManager();

    /**
     * @return
     */
    public EventProcessor getEventProcessor();

    /**
     * @return
     */
    public PlayerState getPlayerState();

    /**
     */
    public void notifyPlayerStateChanged();

	public GameCharacter[] getGameCharacters();
}
